package com.huirui.server.pojo.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
public class CouponVo {

    @Schema(description = "优惠券ID")
    private Long id;

    @Schema(description = "用户的优惠券id")
    private Long userCouponId;

    @Schema(description = "优惠券名字")
    private String name;

    @Schema(description = "优惠券类型，0 - 通用券，1 - 品类券，2 商品券")
    private Integer couponType;

    @Schema(description = "优惠券面额")
    private BigDecimal denomination;

    @Schema(description = "是否有使用门槛，0 - 无门槛，1 - 有门槛")
    private Integer hasThreshold;

    @Schema(description = "使用门槛")
    private BigDecimal threshold;

    @Schema(description = "优惠券领取状态 0-未领取，1-已领取,2-已领完")
    private Integer couponStatus;

    @Schema(description = "优惠券使用状态 0-未使用，1-已使用，2-已过期，3-已失效")
    private Integer couponUseStatus;

    @Schema(description = "有效期类型，0 - 领取后 N 天有效，1 - 某一个时间有效")
    private Integer expiryType;

    @Schema(description = "有效天数")
    private Integer validDays;

    @Schema(description = "有效开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime availableStartTime;

    @Schema(description = "有效结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private LocalDateTime availableEndTime;

}
